package com.itheima.ydd.common;

import com.itheima.ydd.entity.YddUser;

/**
 * 工具类：实现向threadlocal存储数据的方法
 * 基于ThreadLocal封装工具类，用户保存和获取当前登录用户id
 * 作用: 全局数据共享
 */
public class YddUserHolder {

    private static ThreadLocal<YddUser> tl = new ThreadLocal<>();


    //将用户对象，存入Threadlocal
    public static void set(YddUser user) {
        tl.set(user);
    }

    //从当前线程，获取用户对象
    public static YddUser get() {
        return tl.get();
    }

    //从当前线程，获取用户对象的id
    public static Integer getUserId() {
        return tl.get().getId();
    }

    //清空
    public static void remove() {
        tl.remove();
    }
}
